#pragma once
#include "stdafx.h"

/*--------------------------------------------------------------------------------
 * Adaptive Intelligence - Core Class Library
 * Version 2.00
 * 
 * Shutdown Timing Enumeration
 *		Lists the options for system-originating application/process shutdown timing.
 *------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
 * System Imports
 *------------------------------------------------------------------------------*/
namespace Adaptive
{
	namespace Win32
	{
		/// <summary>
		/// Lists the options for system-originating application/process shutdown timing.
		/// </summary>
		/// <remarks>
		/// This enumeration represents the shutdown priority for a process relative to other processes in the system. 
		/// The system shuts down processes from high dwLevel values to low. The highest and lowest shutdown 
		/// priorities are reserved for system components.
		/// </remarks>
		public enum class ShutdownTiming
		{
			/// <summary>
			/// /// Indicates the system reserved last shutdown range. (0x0 - 0x0FF)
			/// </summary>
			SystemLastShutdown = 0,
			/// <summary>
			/// /// Indicates the application reserved last shutdown range.(0x100 - 0x1FF)
			/// </summary>
			ApplicationLastShutdown = 1,
			/// <summary>
			/// /// Indicates the application reserved "in between" shutdown range.(0x200 - 0x2FF)
			/// </summary>
			ApplicationInBetweenShutdown = 2,
			/// <summary>
			/// /// Indicates the application reserved first shutdown range.(0x300 - 0x3FF)
			/// </summary>
			AppplicationFirstShutdown = 3,
			/// <summary>
			/// Indicates the system reserved first shutdown range.(0x400 - 0x4FF)
			/// </summary>
			SystemReserved = 4
		};
	}
}